#define _CRT_SECURE_NO_WARNINGS 1
//
//#include<iostream>
//
//using namespace std;

//class Date
//{
//public:
//	Date(int year,int month,int day)
//	{
//		_year = year;
//		_month = month;
//		_day = day;
//	}
//
//	int GetMonthDay(int year, int month)
//	{
//		int m[13] = { 0,31,28,31,30,31,30,31,31,30,31,30,31 };
//		if (month == 2)
//			if ((year % 400 == 0) || (year % 4 == 0 && year % 100 != 0))
//				return 29;
//		return m[month];
//	}
//
//	int YearSum(int year, int month, int day)
//	{
//		int sum = 0;
//		while (month > 0)
//		{
//			month--;
//			sum += GetMonthDay(year, month);
//		}
//		sum += day;
//		return sum;
//	}
//
//	int _year = 1;
//	int _month = 1;
//	int _day = 1;
//};
//
//int main()
//{
//	int year, month, day;
//	cin >> year >> month >> day;
//	Date A(year, month, day);
//	
//	cout << A.YearSum(year, month, day) << endl;
//
//	return 0;
//}

//#include<iostream>
//
//using namespace std;
//
//class Date
//{
//public:
//	Date(int year, int month, int day)
//	{
//		_year = year;
//		_month = month;
//		_day = day;
//	}
//
//	int GetMonthDay(int year, int month)
//	{
//		int m[13] = { 0,31,28,31,30,31,30,31,31,30,31,30,31 };
//		if (month == 2)
//			if ((year % 400 == 0) || (year % 4 == 0 && year % 100 != 0))
//				return 29;
//		return m[month];
//	}
//	Date& operator+=(int day)
//	{
//		_day += day;
//		while (_day > GetMonthDay(_year, _month))
//		{
//			_day -= GetMonthDay(_year, _month);
//			_month++;
//			if (_month == 13)
//			{
//				_year++;
//				_month = 1;
//			}
//		}
//		return *this;
//	}
//
//	bool operator==(Date& a)
//	{
//		return _year == a._year
//			&& _month == a._month
//			&& _day == a._day;
//	}
//	bool operator>(Date& a)
//	{
//		if (_year < a._year)
//			return false;
//		else if (_year == a._year && _month < a._month)
//			return false;
//		else if (_year == a._year && _month == a._month && _day < a._day)
//			return false;
//		else
//			return true;
//	}
//
//private:
//	int _year = 1;
//	int _month = 1;
//	int _day = 1;
//};
//
//int main()
//{
//	int a, b;
//	cin >> a >> b;
//
//	int count = 1;
//
//	Date A(a / 10000, (a / 100) % 100, a % 100);
//	Date B(b / 10000, (b / 100) % 100, b % 100);
//
//	if (B > A)
//	{
//		Date B(a / 10000, (a / 100) % 100, a % 100);
//		Date A(b / 10000, (b / 100) % 100, b % 100);
//	}
//
//	while (!(A == B))
//	{
//		A+=1;
//		count++;
//	}
//	cout << count << endl;
//
//	return 0;
//}
//
//#include<iostream>
//
//using namespace std;
//
//class Date
//{
//public:
//	Date(int year, int month, int day)
//	{
//		_year = year;
//		_month = month;
//		_day = day;
//	}
//
//	void Print()
//	{
//		printf("%d-%02d-%02d\n", _year, _month, _day);
//	}
//
//	int GetMonthDay(int year, int month)
//	{
//		int m[13] = { 0,31,28,31,30,31,30,31,31,30,31,30,31 };
//		if (month == 2)
//			if ((year % 400 == 0) || (year % 4 == 0 && year % 100 != 0))
//				return 29;
//		return m[month];
//	}
//	Date& operator+=(int day)
//	{
//		_day += day;
//		while (_day > GetMonthDay(_year, _month))
//		{
//			_day -= GetMonthDay(_year, _month);
//			_month++;
//			if (_month == 13)
//			{
//				_year++;
//				_month = 1;
//			}
//		}
//		return *this;
//	}
//
//	bool operator==(Date& a)
//	{
//		return _year == a._year
//			&& _month == a._month
//			&& _day == a._day;
//	}
//	bool operator>(Date& a)
//	{
//		if (_year < a._year)
//			return false;
//		else if (_year == a._year && _month < a._month)
//			return false;
//		else if (_year == a._year && _month == a._month && _day < a._day)
//			return false;
//		else
//			return true;
//	}
//
//private:
//	int _year = 1;
//	int _month = 1;
//	int _day = 1;
//};
//
//int main()
//{
//	int year, day;
//
//	while (scanf("%d %d", &year, &day) != EOF)
//	{
//		Date A(year, 1, 0);
//
//		A += day;
//		A.Print();
//	}
//
//	return 0;
//}

#include<iostream>

using namespace std;

class Date
{
public:
	Date(int year, int month, int day)
	{
		_year = year;
		_month = month;
		_day = day;
	}

	void Print()
	{
		printf("%d-%02d-%02d\n", _year, _month, _day);
	}

	int GetMonthDay(int year, int month)
	{
		int m[13] = { 0,31,28,31,30,31,30,31,31,30,31,30,31 };
		if (month == 2)
			if ((year % 400 == 0) || (year % 4 == 0 && year % 100 != 0))
				return 29;
		return m[month];
	}
	Date& operator+=(int day)
	{
		_day += day;
		while (_day > GetMonthDay(_year, _month))
		{
			_day -= GetMonthDay(_year, _month);
			_month++;
			if (_month == 13)
			{
				_year++;
				_month = 1;
			}
		}
		return *this;
	}

	bool operator==(Date& a)
	{
		return _year == a._year
			&& _month == a._month
			&& _day == a._day;
	}
	bool operator>(Date& a)
	{
		if (_year < a._year)
			return false;
		else if (_year == a._year && _month < a._month)
			return false;
		else if (_year == a._year && _month == a._month && _day < a._day)
			return false;
		else
			return true;
	}

private:
	int _year = 1;
	int _month = 1;
	int _day = 1;
};

int main()
{
	int year, month, day;
	cin >> year >> month >> day;
	int count = 0;

	Date A(year, month, day);
	Date B(year, 1, 0);
	while (!(A == B))
	{
		B += 1;
		count++;
	}
	cout << count << endl;

	return 0;
}